Personnel
Overall Objectives
Research Program
Application Domains
New Software and Platforms
New Results
Bilateral Contracts and Grants with Industry
Partnerships and Cooperations
Dissemination
Bibliography
XML PDF e-pub
PDF e-Pub


Section: New Results

Data-Flow/Dependence Profiling for Structured Transformations

Participants : Diogo Nunes Sampaio, Fabian Gruber, Christophe Guillon [STMicroelectronics] , Antoine Moynault [STMicroelectronics] , Louis-Noël Pouchet [CSU, USA] , Fabrice Rastello.

Profiling feedback is an important technique used by developers for performance debugging, where it is usually used to pinpoint performance bottlenecks and also to find optimization opportunities. Assessing the validity and potential benefit of a program transformation requires accurate knowledge of the data flow and data dependencies, which can be uncovered by profiling a particular execution of the program.

In this work we develop MICKEY 5.4, an end-to-end infrastructure for dynamic binary analysis, which produces feedback about the potential to apply structured transformations to uncover non-trivial parallelism and data locality via complex program re-scheduling. Our tool can handle both inter- and intra-procedural aspects of the program in a unified way, thus enabling inter-procedural structured transformations. It is based on QEMU and uses dynamic binary translation to instrument arbitrary programs at run-time. The design of this tool was driven by the goal of achieving portability, both in terms of targeted CPU architectures, but also in terms of programming environment and the use of third-party libraries for which no source code is available.

This work is the fruit of the collaboration 8.4.1.1 with CSU and the contract 7.2 with STMicroelectronics.